package edu.spec.lyq.week09.class1.home;

import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

/**
 * \* User: 11028
 * \* Date: 2018/10/25
 * \* Time: 9:53
 * \* Description:构建测试类，在测试类里创建main方法，然后在main方法里完成以下内容：
 * 1、计算并输出PI/5的正弦值。
 * 2、计算并输出1000的平方根。
 * 3、计算并输出2的10次方。
 * 4、计算并输出100.9的向下取整。
 * 5、计算并输出100.1的向上取整。
 * 6、计算并输出100.4的四舍五入取整。
 * 7、计算并输出100.5的四舍五入取整。
 *
 * 8、构造动态字符串并赋值"abcdefgHIJKLMN"
 * 输出该动态字符串内容和长度
 * 在a和b之间插入M，然后输出该动态字符串
 * 在M和b之间插入N，然后输出该动态字符串
 * 删除I，然后输出该动态字符串
 * 将最后出现的MN替换成NM
 * 9、输出当前的系统时间，格式为“2017年11月20日 11:14”
 * 10、输出从现在开始，到2030年的所有日期1号的星期一，格式为"2018年1月1日 星期一"
 */
public class MathTest {
    public static void main(String[] args) {
        System.out.println("PI/5的正弦值:"+Math.sin(Math.PI/5));
        System.out.println("1000的平方根:"+Math.sqrt(1000));
        System.out.println("2的10次方:"+Math.pow(2,10));
        System.out.println("100.9的向下取整:"+Math.floor(100.9));
        System.out.println("100.1的向上取整:"+Math.ceil(100.1));
        System.out.println("100.4的四舍五入取整:"+Math.round(100.4));
        System.out.println("100.5的四舍五入取整:"+Math.round(100.5));

        StringBuffer sbuf = new StringBuffer("abcdefgHIJKLMN");
        System.out.println(sbuf);
        sbuf.insert(1,'M');
        System.out.println(sbuf);
        sbuf.insert(2,'N');
        System.out.println(sbuf);
        sbuf.deleteCharAt(10);
        System.out.println(sbuf);
        sbuf.replace(13,15,"NM");
        System.out.println(sbuf);

        Date d = new Date();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年mm月dd日 HH:mm");
        System.out.println(sdf.format(d));

        Calendar cal = Calendar.getInstance();
        SimpleDateFormat sdf1 =new SimpleDateFormat("yyyy/MM/dd EEEE");
        cal.set(Calendar.DAY_OF_MONTH,1); //设置日期为1号

        int n = 1;
        while(cal.get(Calendar.YEAR) != 2030){
            if(cal.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY){
                Date date =cal.getTime();
                System.out.println(sdf1.format(date));
                n++;
            }
            cal.add(Calendar.MONTH,1); //月份增加1月
        }
    }
}
